Motor vehicle control system and method for controlling a motor vehicle

ABSTRACT

The invention relates to a motor vehicle control system consisting of at least two separate control units (S 1 -Sx), which are connected with one another by way of a bus system ( 5 ), whereby the control devices (S 1 -Sx) are provided for controlling individual vehicle components, in each instance. It is the task of the invention to effectively utilize the resources of memory space and computing time that exist within a combination of control devices of a motor vehicle and, in this connection, to assure processing of the routines that can take place in real time. The method is supposed to assure utilization of the existing resources, without additional hardware expenditure.  
     According to the invention, this is achieved in that the program code of at least one function of a program that is stored in a control device (S 1 ) and carried out by the processor of the control device (S 1 ) is stored in a different control device (S 2 ) that is coupled to the common bus system ( 5 ), and that the function transferred out of the control device (S 1 ) in this manner is linked with the program sequence of the program running on the control device (S 2 ) and processed on the processor of the control device (S 2 ), whereby the input and output variables of the function can be transmitted between the control device (S 2 ) and the control device (S 1 ) by way of the bus system ( 5 ).

[0001] The invention relates to a motor vehicle control system having atleast two separate control units, which are connected with one anotherby way of a bus system, and a method for controlling motor vehiclecomponents by means of the motor vehicle control system.

[0002] It is generally and previously known to provide a combination ofcontrol devices in vehicles, whereby a separate control device isprovided for individual functions (engine control, transmission control,ABS, etc.), in each instance. In this connection, the control devicesare connected by way of a bus system and can communicate with oneanother, exchange data, etc. The constant expansion of functionality hasthe result, particularly in the case of complex control devices, such asthe engine control device, of rapid changes in the control devicehardware, whereby the memory space, I/O ports, and computer performanceare expanded. As soon as control devices and software are ready forseries production, their capacity limits are already reached.Time-consuming and cost-intensive adaptation of the control devices tothe increased demand for memory space and computing speed, in eachinstance, are the result.

[0003] A method for operating a control device for a motor vehicle, inwhich two control units are connected by way of a data bus, ispreviously known from DE 197 50 026 A1. If it is determined, duringoperation of the control units, that one of the control devices hasreached its performance limit, control device functions are temporarilytransferred to the second control device and performed there. In thisconnection, the program code of the function is transmitted to thiscontrol device, or a function implemented in dual manner, that isalready present on the second control device, is utilized. It is adisadvantage with this method of procedure that the entire program codehas to be transmitted once, or that the functions have to be implementedin the control devices in dual manner. This results in additional memoryrequirements and is impossible for complex functions. Furthermore, asignificant effort has to be made for temporarily transferring thefunctions. The capacity of the control device to which they aretransferred must be checked, the program structures are switched over tothe control device to which the function is being delegated, since a newfunction has to be linked. This is impossible, in particular, fortime-critical and safety-relevant functions.

[0004] The use of a client/server architecture on a vehicle controldevice combination is previously known from DE 19/48 536 C2. Here, theindividual application functions are described independent of thedevices and addressed by way of a communication interface. Anycommunication between the processes therefore generates a data exchange,which must take place by way of the bus system. The individualapplication functions can therefore be implemented only once, in orderto save space, and are available to several requesters. The methodrequires an additional level (function monitor level) that functions asa central control unit as well as a central memory for the individualsystems (clients/servers). It is a problem, in this connection, that theindividual functions can be called up by several requesters at the sametime, and that the response times are lengthened due to the sequentialprocessing. Use under real-time conditions, such as for an enginecontrol device, for example, is therefore problematic.

[0005] The significant advantage of the client/server architecture liesin the central management of the functions, whereby these only have tobe implemented once for the applications, in each instance. Theindividual vehicle control devices, e.g. engine control device,transmission control device, ABS control device, have only very fewfunctions in common, however, so that the construction of aclient/server architecture for common use of the functions does notproduce any decisive advantages.

[0006] It is the task of the invention to effectively utilize theresources of memory space and computing time that exist within acombination of control devices of a motor vehicle and, in thisconnection, to assure processing of the routines that can take place inreal time. The method is supposed to assure utilization of the existingresources, without additional hardware expenditure.

[0007] This task is accomplished, in the case of motor vehicle controlsystems of the type stated, according to the invention, by means of thecharacterizing features of claims 1-8 and, in the case of methods forcontrolling a motor vehicle, of the type stated, according to theinvention, by means of the characterizing features of claims 9-16.

[0008] Usually, the processing of control functions takes place in acontrol device specifically provided for the vehicle component. Thus,for example, the engine control algorithms such as calculation of thecharacteristic variables for injection and ignition, AGR, cooling, errormanagement, driving speed regulation, etc., are processed in the enginecontrol device, while a transmission control device is provided forcontrolling the transmission, and an ABS control device is provided forimplementing anti-lock strategies to brake the vehicle.

[0009] If the functions stored in the control device must be expanded,or if new functions have to be added, one rapidly reaches the limits ofthe individual control devices with regard to memory space and computingcapacity, so that a new generation of control devices, having expandedmemory space and higher processing speeds, must be introduced. However,expansion of the functions does not proceed uniformly in all the controldevices, so that memory space might still be available in thetransmission control device, for example, and computing capacity is alsoavailable, while adding a new function, e.g. for direct fuel injection,to the engine control device, is not possible because its memory spaceand computing capacity are no longer sufficient. Until now, if a controldevice had reached its capacity limit with regard to memory space and/orcomputing performance, the use of a new control device took place.

[0010] It is now advantageous that according to the invention, a programthat is to be processed in a control device is divided up, wherebyfunctions from the control device that has reached its capacity limitare transferred to a control device having available resources. In thisconnection, the program code of the function that was taken out of theprogram is transferred to the “foreign” control device. Processing ofthe transferred function also takes place on the processor of the“foreign” control device. The requirements for computing, any transfervalues, as well as the input and output variables are exchanged by wayof a bus system that connects the control devices.

[0011] It is advantageous that according to the invention, the functionsthat require a large amount of memory space and/or computing time butfor which no great requirements in terms of real-time capability are setare those that are transferred out of the control devices. The overallsystem remains real-time capable, since the lengthened response timesthat result from communication by way of the bus system only affect thenon-time-critical functions that have been transferred out. By means oftransferring out non-time-critical functions, room is made for thosefunctions for which greater requirements with regard to the responsetimes are set.

[0012] The selection of the transferred functions can also be based onpurely practical considerations, in that newly added functions aretransferred to a foreign control device independent of their need formemory space and computing time. The function to be newly implemented inthe combination of control devices is then not implemented in thecontrol device that is specifically intended for the control task of thevehicle component, if the latter has reached its capacity limit. Thisnewly added function is transferred to a foreign control device. Thealgorithms that previously ran on the control device do not have to bechanged for this, whereby the structure that might already have beentested and proven can be maintained.

[0013] It is advantageous that according to the invention, the functionsthat set low requirements with regard to the data exchange with theactual main program are those that are transferred from a control devicethat is working at its capacity limit in terms of memory space and/orcomputing time. The amount of additional data to be transmitted by wayof the bus system can therefore be kept low, and this assures a lowerload for the bus system, for one thing, and faster processing of thetransferred function, for another thing.

[0014] At present, the design of control device functions for vehiclecontrol devices extensively takes place using hardware-independentdevelopment tools such as ASCET-SD or MATLAB. In this connection, thefunctions are described by means of block schematics, status graphs,signal links, etc. Here, the generation of the control code for aspecific platform takes place only after the hardware-independentdesign. The design method thereby makes it possible to isolateindividual functions from the total program, in simple manner.

[0015] It is advantageous that according to the invention, if the freeresources of all of the control devices of the combination of controldevices are utilized, and if the control functions are distributed toother control devices, new control devices that have been expanded interms of computing performance and memory capacity have to be introducedonly if the resources of all the control devices that were present inthe vehicle before and were connected by way of a bus system have beenexhausted.

[0016] It is advantageous that according to the invention, functionsfrom the engine control device, in particular, are transferred to adifferent control device, for example the transmission control device ofthe vehicle. The expansion of the engine control device that becomesnecessary due to new algorithms that have been introduced into thecontrol device, for example for direct fuel injection, or due toexpansion of existing algorithms, is postponed by means of transfer ofnon-time-critical functions, such as driving speed regulation and/or airconditioning system control and/or engine cooling/fan control and/oranti-theft lock, until all the control devices arranged in thecombination of control devices of the vehicle have been utilized totheir full capacity in terms of computing time and memory space.

[0017] The motor vehicle control system according to the inventionoffers the possibility of transferring a large number of functions fromone control device to one or more other, different control devices. Inthis connection, distributing the functions is possible without anychange in the existing control devices and their connections with oneanother. The possibility therefore exists of fitting expanded and/oradditional algorithms into an existing control device structure. Newalgorithms can therefore not only be introduced in connection with a newdesign, but also retrofitted into existing structures, as long asresources with regard to memory space and computing performance arestill available in one of the control devices that is part of thecombination of control devices.

[0018] In the following, am exemplary embodiment of the invention willbe described using a drawing.

[0019] It shows an exemplary embodiment of the motor vehicle controlsystem according to the invention. A control device S1 that serves tocontrol an engine 1, a control device S2 that controls a transmissionthat belongs to the engine, and a control device Sx, which controls thebrake pressure of the vehicle brakes, for example (ABS control device),are shown as examples. The control devices S1-Sx are connected with oneanother by way of a bus system 5 of the vehicle, e.g. a CAN bus. SensorsSM and actors AM are arranged on the engine 1, the measurement andcontrol signals SM1-SMx and AM1-AMx of which are applied to the controldevice S1, i.e. are controlled by the latter. Sensors SG and actors AGare arranged on the transmission 2, the measurement and control signalsSG1-SGx and AG1-AGx of which are applied to the control device S2, i.e.are controlled by the latter. Sensors SD and actors AD are arranged onthe brake pressure control 4, the measurement or control signals SM1-SMxand AM1-AMx of which are applied to the control device Sx, i.e. arecontrolled by the latter. Furthermore, the signals DZ1-DZ4 of the wheelrotation speed sensors 3 are applied to the control device.

[0020] Programs for controlling a vehicle component are stored in thecontrol devices S1-Sx, in each instance.

[0021] A program HPM for engine control is stored in the control deviceS1. The program consists of the functions FM1-FMx, which determineparameters and/or process measurement values of the sensors SM and/ordetermine control variables for the actors AM. The program HPM forcontrolling the engine runs on the processor of the control device 1. Asalready described, greater demands on the control device S1 with regardto memory space and computing capacity can come about as the result ofnecessary expansion of the functions FM1-FMx, or as the result of newlyadded functions. If the device has reached its capacity limit, it wouldhave to be replaced with a new control device provided with expandedmemory space and a greater computing capacity. However, additionalcontrol devices S2-Sx are present in the vehicle. A program HPG, whichconsists of functions FG1-FGx for controlling the transmission is storedin the control device S2. The program HPG is carried out on theprocessor of the control device 2. Another program HPB having functionsfor controlling the brake pressure FB1-FBx is stored in the controldevice Sx, whereby it is carried out on the processor of this controldevice Sx.

[0022] If an increased demand for computing and/or memory capacity inthe control device S1 is required, memory space and computing capacitycan be made available in the control device 1 by means of transferringout individual functions, such as the function FM4, in this example, toa different control device, namely S2 here.

[0023] The function FM4, which contains the driving speed regulation,for example, is then stored on the control device S2 for controlling thetransmission, and runs on the processor of this control device S2. Thenecessary parameters are made available by the control device S1, by wayof the bus system 5. The parameters calculated by the function FM4, forexample an injection amount necessary in order to implement the desiredspeed of the vehicle, can be called up by the control device S1 by wayof the bus system 5. The parameters calculated in the control device S2in this manner are processed further in the control device S1, i.e. theycan form the setting variables for the actors AM for controlling theengine. The function FM4 is linked with the program for controlling thetransmission, HPG, but runs extensively isolated from the latter interms of data exchange.

[0024] As shown with the example of the function FM4, other functions ofcontrolling the engine can also be transferred to the control device S2for controlling the transmission. It is also possible to transfer thefunctions to other control devices, for example the control device Sxthat is shown. Another possibility is to divide several functions of theengine control device FM1-FMx, which are to be transferred out, amongdifferent control devices, so that parts of the engine control arestored and carried out in the transmission control device SG and otherparts in the control device Sx.

Reference Symbol List

[0025]1 engine

[0026]2 transmission

[0027]3 wheel rotation speed sensor

[0028]4 brake pressure control

[0029]5 bus system

[0030] S1 control device for controlling the engine

[0031] S2 control device for controlling the transmission

[0032] Sx control device for controlling the brake pressure

[0033] HPM program for controlling the engine

[0034] HPG program for controlling the transmission

[0035] HPB program for controlling the brake pressure

[0036] FM1-FMx functions for controlling the engine

[0037] FG1-FGx functions for controlling the transmission

[0038] FB1-FBx functions for controlling the brake pressure

[0039] SM1-SMx signals of the sensors for controlling the engine

[0040] SG1-SGx signals of the sensors for controlling the transmission

[0041] DZ1-DZ4 signals of the wheel rotation speed sensors

[0042] SD1-SDx signals of the pressure control

[0043] AD1-ADx signals for controlling the actors for brake pressurecontrol

[0044] AG1-AGx signals for controlling the actors for engine control

[0045] AM1-AMx signals for controlling the actors for transmissioncontrol

[0046] SM sensors for controlling the engine

[0047] AM actors for controlling the engine

[0048] SG sensors for controlling the transmission

[0049] AG actors for controlling the transmission

1. Motor vehicle control system consisting of at least two separatecontrol devices (S1-Sx), which are connected with one another by way ofa bus system (5), whereby the control devices (S1-Sx) are provided forcontrolling individual vehicle components, in each instance, wherein theprogram code of at least one function of a program that is stored in acontrol device (S1) and carried out by the processor of the controldevice (S1) is stored in a different control device (S2) that is coupledto the common bus system (5), and therefore is no longer present in thecontrol device (S1), whereby the function transferred out of the controldevice (S1) in this manner is linked with the program sequence of theprogram running on the control device (S2) and processed on theprocessor of the control device (S2), whereby the input and outputvariables of the function can be transmitted between the control device(S2) and the control device (S1) by way of the bus system (5).
 2. Motorvehicle control system according to claim 1, wherein several functionsof the program that is stored on a control device (S1) and runs on thisdevice are transferred out, whereby the program code of thesetransferred functions is stored in another control device (S2-Sx), ineach instance, and the functions on the control device (S2-Sx), in eachinstance, are linked with the programs that run on these control devices(S2-Sx), whereby the transferred functions are thereby distributed overother control devices (S2-Sx) with regard to their storage in memory andtheir implementation.
 3. Motor vehicle control system according to claim1, wherein the functions transferred out of the control device (S1) arenew functions that have been added in the course of the development ofthe control device (S1).
 4. Motor vehicle control system according toclaim 1, wherein the functions that have been transferred out of thecontrol device (S1) have longer response times than the functions thatare stored in the control device (S1) and are carried out within theprogram that runs on this control device (S1).
 5. Motor vehicle controlsystem according to claim 1, wherein the functions that have beentransferred out of the control device (S1) have a lower number of inputand/or output variables than the functions that are stored in thecontrol device (S1) and are carried out within the program that runs onthis control device (S1).
 6. Motor vehicle control system according toclaim 1, wherein the functions that have been transferred out of thecontrol device (S1) have a greater need for memory space than thefunctions that are stored in the control device (S1) and are carried outwithin the program that runs on this control device (S1).
 7. Motorvehicle control system according to claim 1, wherein the control device(S1) from which the program code of at least one function (FM4) that hasbeen transferred out of the program (HPM) that runs on the controldevice (S1) is the control device (S1) that controls the vehicle engine(1).
 8. Motor vehicle control system according to claim 7, wherein thefunctions that have been transferred out of the program (HPM) that runson the control device (S1) are the functions for regulating speed and/orthe function for cooling the engine and/or the function for controllingthe fan and/or the function of the anti-theft lock and/or the pre-glowfunction for the glow pins and/or the function of regulating the exhaustgas recycling and/or the function of recognizing the driver's wishes byway of the gas pedal and/or error management.
 9. Motor vehicle controlsystem according to claim 1, wherein the control device (S2) to whichthe program code of at least one function (FM4) that has beentransferred out of the program (HPM) that runs on the control device(S1) has been transferred is the control device (S2) that controls thetransmission (2).
 10. Method for controlling a motor vehicle, for acontrol system consisting of at least two separate control devices(S1-Sx), which are connected with one another by way of a bus system(5), whereby the control devices (S1-Sx) are provided for controllingindividual vehicle components, in each instance, whereby independentprograms consisting of several functions run in the control devices, ineach instance, wherein at least one function for controlling a vehiclecomponent assigned to the control device (S1), in each instance, storedin a different control device (S2) that serves to control anothervehicle component, is stored in the control device (S2) and is carriedout within the program that runs on this control device (S2), and notstored in the control device (S1) with its program code, whereby theinput and output variables of the function are transmitted between thecontrol devices (S1 and S2) by way of the bus system (5).
 11. Method forcontrolling a motor vehicle according to claim 10, wherein severalfunctions of the program that is stored on a control device (S1) andruns on this device are transferred out, whereby the program code ofthese transferred functions is stored in another control device (S2-Sx),in each instance, and the functions are carried out within the programsthat run on the control device (S2-Sx), in each instance, and thefunctions transferred to the control devices (S2-Sx), in each instancemake output variables available for the program that is running on thecontrol device (S1), by way of the bus system (5).
 12. Method forcontrolling a motor vehicle according to claim 10 wherein the functionstransferred out of the control device (S1) are new functions that havebeen added in the course of the development of the control device (S1).13. Method for controlling a motor vehicle according to claim 10 whereinthe function(s) that has/have been transferred out of the control device(S1) and run on the other control device (S2)/the other control devices(S2-Sx) have longer response times than the functions that are stored inthe control device (S1) and are carried out within the program that runson this control device (S1).
 14. Method for controlling a motor vehicleaccording to claim 10, wherein the function(s) that has/have beentransferred out of the control device (S1) and run on the other controldevice (S2)/the other control devices (S2-Sx) have a lower number ofinput and/or output variables than the functions that are stored in thecontrol device (S1) and are carried out within the program that runs onthis control device (S1).
 15. Method for controlling a motor vehicleaccording to claim 10, wherein the function(s) that has/have beentransferred out of the control device (S1) and run on the other controldevice (S2)/on the other control devices (S2-Sx) have a greater need formemory space than the functions that are stored in the control device(S1) and are carried out within the program that runs on this controldevice (S1).
 16. Method for controlling a motor vehicle according toclaim 10, wherein the at least program code of one function (FM4) istransferred out of a program (HPM), whereby the program (HPM) serves tocontrol an engine (1), and the program (HPM) runs on the control device(S1) that controls the vehicle engine (1).
 17. Method for controlling amotor vehicle according to claim 16, wherein at least one function runson at least one of the control devices (S2-Sx), which function has beentransferred out of the program (HPM) that runs on the control device(S1), whereby the function(s) that has/have been transferred out are thefunction(s) that serve for regulating speed and/or for controlling theair conditioning system and/or the function for cooling the engineand/or for controlling the fan and/or for implementing an anti-theftlock and/or the pre-glow function for the glow pins and/or the functionof recognizing the driver's wishes by way of the gas pedal and/or forregulating the exhaust gas recycling and/or error management.
 18. Methodfor controlling a motor vehicle according to claim 10, wherein one ofthe control devices (S2-Sx) on which at least one function runs that hasbeen transferred out of the program (HPM) that runs on the controldevice (S1) is the control device (S2) that controls the transmission(2).